import json
import logging
import os
import subprocess

import requests

logger = logging.getLogger(__name__)

# 设置目标POST接口的URL
url = 'http://10.1.16.50:11051/file/upload'  # 将URL替换为实际的接口地址

# 定义目录路径
directory_path = '算例文件'  # 替换为你的目录路径

# 获取目录下的所有文件
files = {}
for file_name in os.listdir(directory_path):
    file_path = os.path.join(directory_path, file_name)
    if os.path.isfile(file_path):  # 确保是文件，而不是目录
        files[file_name] = (file_name, open(file_path, 'rb'))

token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRoIjoiY3VwYi1maWxlLXRvb2wtZHBpcGUtbmV0c2ltLWJsYWNrb2lsLXB2dCIsImV4cCI6MTc5NjIxMjYwMiwidXNlcklkIjoia3EifQ.wdKJhUxxtW8Y0l1Yn_-CDCI-ZonFcODPHzdFk5uSFNc'
headers = {'myToken': token}

data = {'file': '文件'}

for file_name in os.listdir(directory_path):
    file_path = os.path.join(directory_path, file_name)
    if os.path.isfile(file_path):
        files = {'file': (file_name, open(file_path, 'rb'))}  # 字段名必须为 'file'
        response = requests.post(url, data=data, files=files, verify=False, headers=headers)

        if response.status_code == 200:
            print(f'文件 {file_name} 上传成功！')
        else:
            print(f'文件 {file_name} 上传失败，状态码: {response.status_code}')
            print(response.text)

# 关闭所有打开的文件
for file_name, (_, file_obj) in files.items():
    file_obj.close()

import 现有文件查询
# # 在第一个文件运行完后，调用第二个文件
# subprocess.run(["python", "现有文件查询.py"])
